Precoding for time or frequency correlated MIMO channels

ABSTRACT

A method implemented in a base station is disclosed. The method includes precoding data with a precoder, and transmitting the precoded data to a user equipment, and the precoder can be expressed as multiplication OV where V is a first matrix corresponding to a first indication of the precoder for a group of transmitted symbols, and O is a second matrix corresponding to a second indication of the precoder for a variation in a channel. Other methods and apparatuses also are disclosed.

The present application is a divisional of co-pending U.S. patentapplication Ser. No. 12/952,195, filed Nov. 22, 2010, which in turn is adivisional of U.S. patent application Ser. No. 11/950,702, filed Dec. 5,2007, which in turn claims priority to U.S. Provisional Application Ser.No. 60/895,904, filed Mar. 20, 2007, the content of which isincorporated by reference.

The present invention relates to the codebooks used in wirelesscommunications.

BACKGROUND

With an ever growing need for higher data communication rate overwireless medium, users are demanding high rate data transmission. Onearea in which the aforementioned considerations have arisen is in UMTSTerrestrial Radio Access Network (UTRAN) and Evolved-UTRA, which callfor higher user data rates and improved quality of service. A number ofproposals have discussed and concluded the need for multiple-antennasystems to achieve the target spectral efficiency, throughput, andreliability of EUTRA. These proposals have considered different modes ofoperation applicable to different scenarios. The basic assumptions thatvary among proposals include (i) using single stream versus multiplestreams, (ii) scheduling one user at a time versus multiple users, (iii)having multiple streams per user versus a single stream per user, and(iv) coding across multiple streams versus using independent streams. Acommon factor among various downlink physical layermultiple-input-multiple-output (MIMO) proposals, however, is a feedbackstrategy to control the transmission rate and possibly vary thetransmission strategy.

MIMO antenna systems can be effective in fading environment by providingsignificant performance improvements and achievable data rates incomparison to single antenna systems. Closed loop MIMO systems typicallytransmit channel state information from a receiver to a transmitter.Transmitting the channel state information consumes bandwidth that mightotherwise be available for data traffic. The performance gain achievedby multiple antenna system increases when the knowledge of the channelstate information (CSI) at each end, either the receiver or transmitter,is increased. Although perfect CSI is desirable, practical systems areusually built only on estimating the CSI at the receiver, and possiblyfeeding back the CSI to the transmitter through a feedback link with avery limited capacity. Using CSI at the transmitter, the transmissionstrategy is adapted over space (multiple antennas) and over time (overmultiple blocks).

Conventional DL MIMO transmission strategy includes quantized precodingschemes, antenna selection, antenna cycling (with or without rankcontrol), and different space-time coding and spatial multiplexingtransmission scheme. The quantized precoding schemes are used whenever afeedback link from the receiver to the transmitter is present. Theperformance of quantized precoding scheme depends on the codebook designand the complexity and memory requirement are further functions of theprecoding algorithm. Hence, codebook design is one of the main aspectsof the quantized precoding schemes. The conventional design criterion isbased on SNR maximization which is not necessarily the capacity-optimaldesign strategy. Moreover, the precoder size is assumed to be fixedwhich means the number of transmitted data streams, i.e., precodingrank, is fixed and is usually taken to be the minimum of the number oftransmit and receive antennas.

SUMMARY

In one aspect, a static codebook design provides a successive codebookstructure and the precoding matrices are obtained from a set ofprecoding vector codebooks. This design addresses the problem ofoptimized vector codebook design, i.e., the set of vector codebookswhich result in the optimal precoding matrix codebook.

In another aspect, a different code-book design problem. When thechannel is correlated in time (or in frequency, e.g., across differenttones in OFDM systems), the correlation can be used to considerablyreduce the feedback requirement without loss in performance. The idea ofdifferential codebook is to feedback only the variation in the channel,since typically quantizing the channel variations requires a smallercodebook than quantizing the channel itself.

Advantages of preferred embodiments of the above aspects may include oneor more of the following. The design jointly optimizes the vectorcodebooks such that the resulting precoder matrices are optimized. Byemploying the differential codebook and optimized vector codebook, theperformance of quantized precoding schemes is improved and higherthroughput will be achievable. In comparison to the other competitiveschemes on codebook based precoding which use the CQI-metric basedprecoder selection, the codebook requires less memory to store and haslower computational complexity. The optimal codebook is channel specificand is finely tuned to the channel statistics. The vector codebooks canbe used with successive or Householder structured codebook. Simulationresults show the superiority of the designed codebooks over theconventional codebooks.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic block diagram of a multiple-antenna communicationssystem with quantized feedback of channel state information.

FIG. 2 schematically illustrates the dependency of variables in thedetermination of eigenvectors and quantized eigenvectors and there-creation of quantized eigenvectors in a successive beamformingscheme.

FIG. 3 shows an exemplary codebook generation process.

FIG. 4 shows an exemplary precoder codebook design algorithm.

DESCRIPTION

An exemplary multiple-antenna communication system 100 with static anddifferential precoding codebook is schematically shown in FIGS. 1-2. Atransmitter 110 transmits from t transmitting antennas 111.1-111.t overa fading channel 130 to r receiving antennas 121.1-121.r coupled to areceiver 120. A channel estimator 125 provides an estimate of thechannel 130 to the receiver 120. The channel estimate is also quantizedand provided to the transmitter 110 via a quantized rate controlfeedback channel 135.

For a multiple-antenna system with r receive and t transmit antennas thebaseband channel model can be expressed as follows: Y=HX+W, (1) where Yis the r×1 received column vector, H is the r×t channel matrix, X is thet×1 transmit column vector, and W is the r×1 noise column vector. Theinput is subject to an average power constraint P, i.e, tr(Q)≦P, whereQ=E[XX^(H)], E[.] denotes the expected value and tr(.) represents thetrace of a matrix.

In an exemplary multi-rank beamforming scheme in accordance with thepresent invention, channel state information (CSI) is available to thetransmitter (CSIT) as well as the receiver (CSIR). Where perfect CSITand CSIR are assumed, the capacity of the multiple-antenna fadingchannel 130 can be achieved through power adaptation over time (oneaverage power for each channel state) and water-filling power controlover multiple eigenvectors of the channel for each block oftransmission.

In systems that employ beamforming such as the MIMO systems, thebeamforming matrix (referred to herein as a codeword) generated inresponse to perceived channel conditions is computed and quantized atthe receiver first, and then is provided to the source transmitter(e.g., via feedback). A conventional approach to reduce the overheadassociated with this feedback is to provide matrix codebook(s) at eachof the transmitter and the receiver, each of the codebook(s) comprisinga plurality, or set, of potential beamforming matrixes that may be useddepending on the channel conditions perceived at the receiver. When thereceiver has identified the appropriate matrix codebook(s), the receiverwill typically feed back only an index (instead of the actual matrixentries) that points to the appropriate codeword in the codebook(s)stored at the transmitter.

Turning now to FIG. 3, an exemplary process to generate the codebook isshown. In this process, a random codebook is generated (200). Next, theprocess partitions channel state information into a set of nearestneighbors for each codebook entry based on a distance metric (210). Theprocess then updates the codebook by finding a centroid for eachpartition (220).

In the MIMO system of FIG. 1 with t transmit antennas at the basestation and a user each with r receive antennas, the complex basebandsignal model is given byy=Hx+w,  (1)

where x is the t×1 transmitted signal vector, H is the r×t channelmatrix, w:N_(c)(0,I) is a circularly symmetric complex additive whiteGaussian noise vector, and y is the r×1 received signal vector. A blockfading channel model is used in which the channel remains constantduring the transmission of each packet (or codeword of length T) and itchanges independently from one block to another, where the distributionof the channel state is known a priori. The average power constraint isgiven by E[x^(H)x]≦P.

In maximizing the throughput in single user (SU-) MIMO systems (orsum-rate throughput for multiple user (MU-) MIMO systems) which isusually the primary goal in downlink transmissions, the followingassumptions can be used: (1) the user feeds back the quantized channelstate via a limited feedback link; (2) based on the feedbackinformation, the base station performs a linear precoding (and onlylinear precoding is allowed) of the transmitted streams.

Let UDV* be the singular value decomposition (SVD) of the channel matrixH. With B bits of feedback, the user quantizes the first n column of V(where n≦min(r, t)) is a fixed number predetermined by the base station)using a quantization codebook Q={Q₁, Q₂, . . . , Q₂ _(B) }Q_(i)εC^(t×r),as follows

$\begin{matrix}{{V\left( {1:n} \right)} = {\arg\;{\min\limits_{Q \in Q}{d\left( {{V\left( {1:n} \right)},Q} \right)}}}} & (2)\end{matrix}$

where d(•,•) is some distance metric. The codebook design problem andthe appropriate choice of the distance metric have been considered inprior art. The columns of the quantized precoding matrix V(1:n)correspond to possible different streams for this user.

The transmitted signal x from the base station then consists of L datastreams, u₁, u₂, . . . , u_(L), sent through column vectors g₁, g₂, . .. , g_(L), of a linear precoder G. We have

$\begin{matrix}{x = {{Gu} = {\sum\limits_{i = 1}^{L}{u_{i}{g_{i}.}}}}} & (3)\end{matrix}$

In SU-MIMO systems, we have L=n while in MU-MIMO systems we have L≧nwhere one or more than one streams may be intended for each user.

Next, a codebook design will be discussed which is static andpredesigned and does not adopt to the changes in the average channelcondition. The first design considers rank specific codebook designwhere for each transmission rank a separate codebook is designed. Thesecond design is based on transformation which generates the codebooksfor all ranks based on a set of vector codebook.

Design Criterion

For a given transmission rank n and B bits of PMI feedback, the codebookdesign problem is formulated as finding the set Q={Q₁, Q₂, . . . , Q₂_(B) } of (t×n) semi-unitary matrices that is a solution to theoptimization problem given by

$\begin{matrix}{C = {\max\limits_{Q}{{E\left\lbrack {\max\limits_{Q \in Q}{\log\;{\det\left( {I + {\frac{P}{t}{HQQ}^{*}H^{*}}} \right)}}} \right\rbrack}.}}} & (4)\end{matrix}$

Let UDV* be the partial SVD of H obtained by retaining only the n rightsingular vectors that correspond to the n largest singular values of H.For a given H the optimal (t×n) precoder that maximizes theinstantaneous mutual information is V, thus, for large enough codebooksize:

$\begin{matrix}{C \approx {\max\limits_{Q}{{E\left\lbrack {\max\limits_{Q \in Q}{\log\;{\det\left( {I + {\frac{P}{t}\left( {D^{*}D} \right)V^{*}{QQ}^{*}V}} \right)}}} \right\rbrack}.}}} & (5)\end{matrix}$

The approximation in (5) is based on the observation that a welldesigned large enough codebook can closely sample the set of allpossible V.

Next, an approximate upper bound on C is determined by consideringchannel realizations whose norms are bounded, i.e., H such that ∥H∥_(F)²=tr[H*H]=tr[D*D]≦β. For such channels:

$\begin{matrix}{C < \approx {\max\limits_{Q}{{E\left\lbrack {\max\limits_{{Q \in Q}\;}{\log\;{\det\left( {I + {\frac{P}{t}\beta\; V^{*}{QQ}^{*}V}} \right)}}} \right\rbrack}.}}} & (6)\end{matrix}$

Considering the low SNR approximation of the bound in (6), i.e., lettingP→0,

$\begin{matrix}{C < \approx {\max\limits_{Q\;}{{E\left\lbrack {\max\limits_{Q \in Q}{\frac{P\;\beta}{t}{{V^{*}Q}}_{F}^{2}}} \right\rbrack}.}}} & (7)\end{matrix}$

The inner maximization in the bound in (7) is equivalent to minimizingthe chordal distance between the dominant right eigenvectors of thechannel and the corresponding quantized vectors, where the chordaldistance is defined as

$\begin{matrix}{{d_{chordal}\left( {Q,V} \right)} = {{\frac{1}{\sqrt{2}}{{{VV}^{*} - {QQ}^{*}}}_{F}} = {\sqrt{t - {{V^{*}Q}}_{F}^{2}}.}}} & (8)\end{matrix}$

On the other hand, considering the high SNR approximation of (6), i.e.,P→∞:

$\begin{matrix}{C < \approx {\max\limits_{Q}{{E\left\lbrack {\max\limits_{Q \in Q}{\log\left( {\left( \frac{P\;\beta}{t} \right)^{n}{\det\left( {V^{*}Q} \right)}^{2}} \right)}} \right\rbrack}.}}} & (9)\end{matrix}$

The inner maximization in the bound in (9) is equivalent to minimizingthe Fubini-Study (FS) distance between the dominant right eigenvectorsof the channel and the corresponding quantized vectors, where the FSdistance is defined asd _(FS)(Q,V)=arccos(det(V*Q)).  (10)

This is so because log(.) is a monotonically increasing function andarccos(.) is a monotonically decreasing function.

For finite SNRs, since the transmitted signals are the linearcombination of the columns of the precoder Q, the precoding codebookdesign used here relies on a metric that measures the distance betweenthe subspaces spanned by different precoders. While there is no knowndistance metric directly associated with the capacity expression (5),the inner maximization in the bound in (6) is equivalent to minimizingthe following p-metric with

$\begin{matrix}{{p = \frac{\beta\; P}{t}}{{d_{p}\left( {Q,V} \right)} = {\arccos\left\lbrack \frac{\det\left( {I + {{pV}^{*}{QQ}^{*}V}} \right)}{\left( {1 + p} \right)^{r}\;} \right\rbrack}}} & (11)\end{matrix}$

between the subspaces defined by V and Q on the Grassmanian manifoldG(N_(T), r) which in turn is the space of all r dimensional subspaces ofan N_(T) dimensional vector space. The design based on the p-metricdepends on the SNR level. The choice of β is discussed next. p-metric isin fact a valid distance metric in the Grassmanian manifold. Moreover,it can be readily verified that if p→0, the p-metric is equivalent tothe chordal distance; and if p→∞, the p-metric is equivalent to theFubini-Study distance. Therefore, the codebook design based on thep-metric bridges the gap between the design for low SNR and that forhigh SNR.

Rank Specific Codebook Design

In this section, the design of an independent codebook for each rank ris discussed. The design algorithm is based on the generalized Lloyd-Maxalgorithm that is a widely used for solving a variety of vectorquantization problems. Given the quantization codebook Q={Q₁, Q₂, . . ., Q₂ _(B) }, the optimal partitioning satisfiesV _(k) ={VεC ^(t×n) :d _(p)(V,Q _(k))≦d _(p)(V,Q _(j)),∀j≠k}  (12)

To satisfy the centroid condition, the following problem is solved forthe k^(th) partition

$\begin{matrix}{Q_{k} = {{{argmin}\;{J(Q)}} = {\arg\;{\min\limits_{{Q \in C^{txn}},{{Q^{*}Q} = I}}{E{\left\lfloor {d_{p}\left( {Q,V} \right)} \middle| {V \in V_{k}} \right\rfloor.}}}}}} & (13)\end{matrix}$

Since an analytical solution for the above optimal centroid problem doesnot exist, this is solved numerically. To employ the gradient-descentsearch algorithm, the real representation of the matrix Q denoted by Qis defined as

$\begin{matrix}{\overset{\_}{Q} = {\begin{bmatrix}{{Re}(Q)} & {- {{Im}(Q)}} \\{{Im}(Q)} & {{Re}(Q)}\end{bmatrix}.}} & (14)\end{matrix}$

The real representation H, V of the matrices H, V, respectively, aresimilarly defined. Also, the system can parameterize the semi-unitarymatrix QεC^(t×n) by using N_(Φ)=2(t−n+1)n independent real parametersφ_(i), i=1, . . . , N_(Φ). Therefore, an unconstrained problem can beobtained in terms of the vector Φ=[φ₁, φ₂, . . . , φ_(N) _(Φ) ]:

$\begin{matrix}{{\min\limits_{{Q \in C^{txn}},{{Q^{*}Q} = I}}{J(Q)}} = {{\min\limits_{\Phi}{J\left( {Q(\Phi)} \right)}} = {\min\limits_{\Phi}{{E\left\lbrack {d_{p}\left( {{\overset{\_}{Q}(\Phi)},\overset{\_}{V}} \right)} \middle| {V \in V_{k}} \right\rbrack}.}}}} & (15)\end{matrix}$

The derivative of the objective function (15) with respect to φ_(k) isgiven by

$\begin{matrix}{{{{\frac{\partial}{\partial\phi_{k}}{J\left( {\overset{\_}{Q}(\Phi)} \right)}} = {{tr}\left\{ {\left\lbrack \frac{\partial{\overset{\_}{Q}(\Phi)}}{\partial\phi_{k}} \right\rbrack^{T}{\nabla_{\overset{\_}{Q}}{J\left( \overset{\_}{Q} \right)}}} \right\}}},{1 \leq k \leq N_{\Phi}}}{where}} & (16) \\\begin{matrix}{{\nabla_{\overset{\_}{Q}}{J\left( \overset{\_}{Q} \right)}} = {E\left\lbrack {{- \frac{\left( {1 - F^{2}} \right)^{{- 1}/2}}{\left( {1 + p} \right)^{r}}}{\nabla_{\overset{\_}{Q}}{\det\left( {I + {p{\overset{\_}{V}}^{T}\overset{\_}{Q}\mspace{11mu}{\overset{\_}{Q}}^{T}\overset{\_}{V}}} \right)}}} \middle| {V \in V_{k}} \right\rbrack}} \\{= {E\left\lbrack {{- 2}p\;{F\left( {1 - F^{2}} \right)}^{{- 1}/2}\overset{\_}{V}\mspace{11mu}{\overset{\_}{V}}^{T}\overset{\_}{Q}} \right.}} \\{\left. \left. \left( {I + {p{\overset{\_}{V}}^{T}\overset{\_}{Q}\mspace{11mu}{\overset{\_}{Q}}^{T}\overset{\_}{V}}} \right)^{- 1} \middle| {V \in V_{k}} \right. \right\rbrack,}\end{matrix} & \begin{matrix}{(17)(18)} \\\;\end{matrix}\end{matrix}$

with

$F = {\frac{\det\left( {I + {p{\overset{\_}{V}}^{T}\overset{\_}{Q}\mspace{11mu}{\overset{\_}{Q}}^{T}V}} \right)}{\left( {1 + p} \right)^{r}\;}.}$The expression

$\frac{\partial{\overset{\_}{Q}(\Phi)}}{\partial\phi_{k\;}}$can be found using standard techniques. The gradient-descent searchalgorithm can be used with the following update formulaΦ^((l+1))=Φ^((l))−μ_(l)∇_(Φ) J( Q (Φ))|_(Φ) _((l))   (19)

where μ_(l) is the sequence of the step sizes. Upon convergence, Φ isused to find the corresponding unitary matrix Q(Φ).

In sum, as shown in FIG. 4, the precoder codebook design algorithm is asfollows:

Input: SNR_(ave), μ_(i), codebook size 2^(B), Iteration_(max), rank rOutput: The codebook Q = {Q₁, Q₂, . . . , Q₂ _(B) } Generate anevaluation set {H^((l))}_(l=1) ^(Size) based on the channeldistribution.${{{Let}\mspace{14mu} p} = {\frac{{SNR}_{ave}}{r}{\max_{k}\left\{ {H^{(l)}}_{F}^{2} \right\}}}};$Initialize the codebook Q(0) = {Q₁(0), Q₂(0), . . . , Q₂ _(B)(0)}randomly; for i = 1 to Iteration_(max) do  Given Q(i − 1), find{V_(k)(i), k = 1, 2, . . . , 2B} using (12);  Calculate the centroid{Q_(k)(i), k = 1, 2, . . . , 2B} using (16 )-(19); end returnQ(Iteration_(max))

Nested Vector Codebook Design

In this embodiment, the system imposes a structure on the codebook whichfacilitates implementation of the precoding scheme in a practical systemby reducing the computational complexity as well as the memoryrequirement. Denote

$e_{k} = {\underset{\underset{k - 1}{︸}}{\left\lbrack {1;0;\ldots\mspace{14mu};0} \right\rbrack}.}$Note that by applying a series of successive rotations, any semi-unitarymatrix QεC^(t×n) can be expressed as

$\begin{matrix}{Q = \left\lbrack {q^{(1)},{\left( {\Upsilon_{1}\left( q^{(1)} \right)} \right)^{*}\begin{bmatrix}0 \\{q^{(2)},{\left( {\Upsilon_{2}\left( q^{(2)} \right)} \right)^{*}\begin{bmatrix}0 \\{q^{(3)},\ldots}\end{bmatrix}}}\end{bmatrix}}} \right\rbrack} & (20)\end{matrix}$

where

_(k): C^(t-k+1)→C^((t-k+1)×(t-k+1)) is a mapping that for any unit-normvector q^((k))εC^(t-k+1) returns a rotation matrix

_(k)(q^((k))) such that

_(k)(q^((k)))q^((k))=e_(t-k+1). Therefore, instead of designing thecodebook of precoding matrices Q, the vector codebooks contains all thevectors q^((k)).

Consider N_(T)−1 sets of unit-norm vectors in Q⁽¹⁾={q_(i) ⁽¹⁾}_(i=1)^(K) ¹ ⊂C^(t), Q⁽²⁾={q_(i) ⁽²⁾}_(i=1) ^(K) ² ⊂C^(t-1), . . . ,Q^((t-1))={q_(i) ^((t-1))}_(i=1) ^(K) ^(t-1) ⊂C². If Q^((t))=1, forrotations, the Householder transformation defined by

${\Psi(x)} = {I - \frac{2{xx}^{*}}{{x}^{2\;}}}$can be used and let

$\begin{matrix}{{\Upsilon_{k}\left( q^{(k)} \right)} = {{\Psi\left( {q^{(k)} - e_{t - k + 1}} \right)} = {I - {\frac{2\left( {q^{(k)} - e_{t - k + 1}} \right)\left( {q^{(k)} - e_{t - k + 1}} \right)^{*}}{{{q^{(k)} - e_{{t - k + 1}\;}}}^{2}}.}}}} & (21)\end{matrix}$

To have a valid Householder transformation in the complex domain, thefirst element of the vector x has to be real valued. The codebook ofrank r consists of the set of Π_(i=1) ^(r)K_(i) precoding matrices ofsize t×n generated using the vector codebooks defined above. The size ofthe vector sets, i.e., K₁, K₂, . . . , K_(t-1), are the designparameters and are usually chosen such that K₁≧K₂≧ . . . ≧K_(t-1). Forexample, to design a set of 12 precoders of rank 2, K₁=4 and K₂=3. Bychoosing the indices i₁, i₂, . . . , i_(r), i_(j)ε{1, 2, . . . , K_(j)}of the vectors from Q⁽¹⁾, Q⁽²⁾, . . . , Q^((r)), any precoder of rank rr=1, 2, . . . , t−1, is generated as

$\begin{matrix}{{Q\left( {q_{i_{1}}^{(1)},q_{i_{2}}^{(2)},\ldots\mspace{14mu},q_{i_{r}}^{(r)}} \right)} = {\left\lbrack {q_{i_{1}}^{(1)},{{\Psi\left( {q_{i_{1}}^{(1)} - e_{t}} \right)}\begin{bmatrix}0 \\q_{i_{2}}^{(2)}\end{bmatrix}},\ldots\mspace{14mu},{{\Psi\left( {q_{i_{1}}^{(1)} - e_{t}} \right)}\begin{bmatrix}0 \\{{\Psi\left( {q_{i_{2}}^{(2)} - e_{t - 1}} \right)}\mspace{14mu}{\ldots\mspace{14mu}\begin{bmatrix}0 \\q_{t_{r}}^{(r)}\end{bmatrix}}\mspace{14mu}\ldots}\end{bmatrix}}} \right\rbrack.}} & (22)\end{matrix}$

The optimization is performed over the vector codebooks Q⁽¹⁾, Q⁽²⁾, . .. , Q^((t-1)). The partitioning and centroid steps for the first vectorcodebook are given by

-   -   Partitioning: Given the quantization codebook Q⁽¹⁾={q₁ ⁽¹⁾, q₂        ⁽¹⁾, . . . , q_(K) ₁ ⁽¹⁾}, the optimal partitioning satisfies        V _(k) ⁽¹⁾ ={vεC ^(t×1) :d _(p)(v,q _(k) ⁽¹⁾)≦d _(p)(v,q _(j)        ⁽¹⁾),∀k≠k}  (23)    -   Centroid: The centroid for the k^(th) partition is given by

$\begin{matrix}{q_{k}^{(1)} = {\arg\;{\min\limits_{{q \in C^{{tx}\; 1}},{{q^{*}q} = 1}}{{E\left\lbrack {d_{p}\left( {q,v} \right)} \middle| {v \in V_{k}^{(1)}} \right\rbrack}.}}}} & (24)\end{matrix}$

where the expectation is taken over the dominant singular vector v.

For the second codebook, a set of doubly indexed partitions can be used,where each partition is identified by two vectors in the first and thesecond vector codebooks Q⁽¹⁾ and Q⁽²⁾. The partitioning and centroidsteps are then as follows.

-   -   Partitioning: Given the quantization codebooks Q⁽¹⁾={q₁ ⁽¹⁾, q₂        ⁽¹⁾, . . . , q_(K) ₁ ⁽¹⁾} and Q⁽²⁾={q₁ ⁽²⁾, q₂ ⁽²⁾, . . . ,        q_(K) ₂ ⁽²⁾}, the optimal partitioning satisfies

$\begin{matrix}{V_{i_{1},i_{2}}^{(2)} = {\left\{ {{V^{(2)} = {\left\lbrack {v^{(1)}v^{(2)}} \right\rbrack \in {{\mathbb{C}}^{t \times 2}:{{d_{p}\left( {V^{(2)},\left\lbrack {q_{i_{1}}^{(1)},{{\Psi\left( {q_{i_{1\;}}^{(1)} - e_{t}} \right)}\begin{bmatrix}0 \\q_{i_{2\;}}^{(2)}\end{bmatrix}}} \right\rbrack} \right)} \leq {d_{p}\left( {V^{(2)},\left\lbrack {q_{j_{1}}^{(1)},{{\Psi\left( {q_{j_{1}}^{(1)} - e_{t}} \right)}\begin{bmatrix}0 \\q_{j_{2}}^{(2)}\end{bmatrix}}} \right\rbrack} \right)}}}}},{\forall{\left( {j_{1},j_{2}} \right) \neq \left( {i_{1},i_{2}} \right)}}} \right\}.}} & (25)\end{matrix}$

-   -   Centroid: The centroid corresponding to index i₂ is given by

$\begin{matrix}{q_{i_{2}}^{(2)} = {\arg\;{\min\limits_{{q \in {\mathbb{C}}^{{({t - 1})} \times 1}},{{q^{*}q} = 1}}{\sum\limits_{i_{1} = 1}^{K_{1}}{{{??}\left\lbrack {{d_{p}\left( {\left\lbrack {q_{i_{1}}^{(1)},{{\Psi\left( {q_{i_{1}}^{(1)} - e_{t}} \right)}\begin{bmatrix}0 \\q\end{bmatrix}}} \right\rbrack,V^{(2)}} \right)}{I\left( {V^{(2)} \in V_{i_{1},i_{2}}^{(2)}} \right)}} \right\rbrack}.}}}}} & (26)\end{matrix}$

where the expectation is over the first two dominant eigenvectors, i.e.,V⁽²⁾ and I(.) denotes the indicator function.

In general, in finding the partitioning for the r^(th) vector codebookQ^((r)), a set of r-tuple indexed partitions is defined and thepartitioning and centroid conditions follows the same structure asabove. A design procedure similar to Algorithm of FIG. 3 can be used tofind the vector codebooks.

Differential Codebook Design

When the channel is correlated in time (or in frequency, e.g., acrossdifferent tones in OFDM systems), the correlation can be used toconsiderably reduce the feedback requirement without loss inperformance. The idea of differential codebook is to feedback only thevariation in the channel, since typically quantizing the channelvariations requires a smaller codebook than quantizing the channelitself.

Let V(s) denote the quantized version of the first N right eigenvectorsof the channel matrix H(s)=U(s)D(s)V*(s) at time s using the staticquantized codebook design previously discussed. For time s+1, we thenfind V(s+1)=OV(s+1) by using a t×t unitary transformation matrix O. WithB bits of feedback, the differential codebook design is formulated asfinding the set of O={O₁, O₂, . . . , O₂ _(B) } unitary matrices suchthat the average quantization error defined byε=E[∥O(V(s),V(s+1))V(s)−V(s+1)∥_(F) ²]  (27)

is minimized where O(V (s), V(s+1)) denotes the transformation as afunction of the right eigenvectors of the channel for two consecutivetime slots.

In order to employ the Lloyed-Max algorithm, the system finds theoptimal partitioning and the centroid for each partition. The optimalpartitioning for the quantizer O(V(s),V(s+1)) satisfiesV _(k)={({circumflex over (V)},V)εC ^(t×r) ×C ^(t×r):∥O_(k) {circumflexover (V)}−V∥ _(F) ² ≦∥O _(j) {circumflex over (V)}−V∥ _(F) ²,∀j≠k},  (28)

where {circumflex over (V)} and V denote the quantized and the actualright eigenvectors of the channel for two consecutive time slots,respectively. To satisfy the centroid condition, the following problemfor the k^(th) partition is solved:

$\begin{matrix}{\arg\;{\min\limits_{{O \in C^{M \times M}},{{O^{*}O} = I}}{E\left\lbrack {{{{O\hat{V}} - V}}_{F}^{2}{\left. {\left( {V,V} \right) \in V_{k}} \right\rbrack.}} \right.}}} & (29)\end{matrix}$

Since ∥O{circumflex over (V)}−V∥_(F) ²=∥V∥_(F) ²−2

etr{V{circumflex over (V)}*O*}+∥{circumflex over (V)}∥_(F) ², thefollowing is maximized

$\begin{matrix}\begin{matrix}{{E\left\lbrack {{{Re}\;{tr}\left\{ {V\;{\hat{V}}^{*}O} \right\}\text{|}\left( {\hat{V},V} \right)} \in V_{k}} \right\rbrack}=={{Re}\;{tr}\left\{ {{E\left\lbrack {{V\;{\hat{V}}^{*}\text{|}\left( {\hat{V},V} \right)} \in V_{k}} \right\rbrack}O^{*}} \right\}}} \\{= {{Re}\;{tr}\left\{ {\Theta\;\Sigma\;\Phi^{*}O^{*}} \right\}}} \\{= {{Re}\;{tr}\left\{ {\Sigma\;\Phi^{*}O^{*}\Theta} \right\}}} \\{= {{Re}\;{\sum\limits_{i = 1}^{M}{\sigma_{i}s_{ii}}}}}\end{matrix} & (30)\end{matrix}$

where ΘΣΦ*=SVD(E└V{circumflex over (V)}*|({circumflex over(V)},V)εV_(k)┘) and T=[s_(ij)]=Φ*O*Θ is a unitary matrix. Thus, (30) ismaximized when all s_(ii)=1, i.e., when O=ΘΦ*. It should be noted thatsince the final solution depends only on ΘΦ*, it can be obtaineddirectly through the polar decomposition of E└VV*|({circumflex over(V)},V)εV_(k)┘ instead of the SVD.

The idea behind differential quantization is to use B₁ bits for the mainquantizer and B₂<B₁ bits for the differential quantizer. For example, inOFDM systems, when the precoder is used for a chunk of adjacent OFDMtones, the precoding is usually much more effective if the chunk size issmaller. Hence, if B bits are available for precoding across a largechunk of adjacent OFDM tones, the chunk is usually broken into severalsmaller, e.g., 3 sub-chunks of the same sizes where the precoder foreach sub-chunk is specified with B/3 bits. However, considering thecorrelation between the adjacent sub-chunks, we can use a main quantizerwith B₁>B/3 bits for quantizing the center sub-chunk and use adifferential codebook with B₂<B/3 bits for quantizing of each of theother two sub-chunks, where B=B₁+2B₂, and B₂<B₁. Depending on thecorrelation structure we can usually pick B₂<B₁ such that the precodingperformance of all three sub-chunks is almost similar.

The invention may be implemented in hardware, firmware or software, or acombination of the three. Preferably the invention is implemented in acomputer program executed on a programmable computer having a processor,a data storage system, volatile and non-volatile memory and/or storageelements, at least one input device and at least one output device.

Each computer program is tangibly stored in a machine-readable storagemedia or device (e.g., program memory or magnetic disk) readable by ageneral or special purpose programmable computer, for configuring andcontrolling operation of a computer when the storage media or device isread by the computer to perform the procedures described herein. Theinventive system may also be considered to be embodied in acomputer-readable storage medium, configured with a computer program,where the storage medium so configured causes a computer to operate in aspecific and predefined manner to perform the functions describedherein.

The invention has been described herein in considerable detail in orderto comply with the patent Statutes and to provide those skilled in theart with the information needed to apply the novel principles and toconstruct and use such specialized components as are required. However,it is to be understood that the invention can be carried out byspecifically different equipment and devices, and that variousmodifications, both as to the equipment details and operatingprocedures, can be accomplished without departing from the scope of theinvention itself.

What is claimed is:
 1. A method implemented in a base station used in awireless communications system, the method comprising: precoding datawith a precoder; and transmitting the precoded data to a user equipment,wherein the precoder can be expressed as multiplication OV where O ismultiplied by V in the order of OV in a non-commutative manner, V is afirst matrix corresponding to a first indication of the precoder for agroup of transmitted symbols, and O is a second matrix corresponding toa second indication of the precoder for a variation in a channel.
 2. Themethod as in claim 1, further comprising: receiving from the userequipment the first indication of the precoder; and receiving from theuser equipment the second indication of the precoder.
 3. The method asin claim 1, wherein the variation is in at least one of time, frequency,and OFDM tones.
 4. The method as in claim 1, wherein the channel iscorrelated in at least one of time and frequency.
 5. The method as inclaim 1, wherein the group of transmitted symbols are transmitted in achunk of adjacent OFDM tones.
 6. The method as in claim 1, whereinmatrix O is a differential precoder.
 7. The method as in claim 1,wherein matrix O is a unitary matrix.
 8. The method as in claim 1,wherein the first indication is quantized with B₁ bits and the secondindication is quantized with B₂ bits where B₂≦B₁.
 9. A base station usedin a wireless communications system, the base station comprising: aprecoding unit to precode data with a precoder; and a transmission unitto transmit the precoded data to a user equipment, wherein the precodercan be expressed as multiplication OV where O is multiplied by V in theorder of OV in a non-commutative manner, V is a first matrixcorresponding to a first indication of the precoder for a group oftransmitted symbols, and O is a second matrix corresponding to a secondindication of the precoder for a variation in a channel.
 10. The basestation as in claim 9, further comprising: a receiving unit to receivefrom the user equipment the first indication of the precoder and thesecond indication of the precoder.
 11. The base station as in claim 9,wherein the variation is in at least one of time, frequency, and OFDMtones.
 12. The base station as in claim 9, wherein the channel iscorrelated in at least one of time and frequency.
 13. The base stationas in claim 9, wherein the group of transmitted symbols are transmittedin a chunk of adjacent OFDM tones.
 14. The base station as in claim 9,wherein matrix O is a differential precoder.
 15. The base station as inclaim 9, wherein matrix O is a unitary matrix.
 16. The base station asin claim 9, wherein the first indication is quantized with B₁ bits andthe second indication is quantized with B₂ bits where B₂≦B₁.
 17. Amethod implemented in a user equipment used in a wireless communicationssystem, the method comprising: receiving, from a base station, dataprecoded with a precoder, wherein the precoder can be expressed asmultiplication OV where O is multiplied by V in the order of OV in anon-commutative manner, V is a first matrix corresponding to a firstindication of the precoder for a group of transmitted symbols and O is asecond matrix corresponding to a second indication of the precoder for avariation in a channel.
 18. The method as in claim 17, furthercomprising: transmitting to the base station the first indication of theprecoder; and transmitting to the base station the second indication ofthe precoder.
 19. The method as in claim 17, wherein the variation is inat least one of time, frequency, and OFDM tones.
 20. The method as inclaim 17, wherein the channel is correlated in at least one of time andfrequency.
 21. The method as in claim 17, wherein the group oftransmitted symbols are transmitted in a chunk of adjacent OFDM tones.22. The method as in claim 17, wherein matrix O is a differentialprecoder.
 23. The method as in claim 17, wherein matrix O is a unitarymatrix.
 24. The method as in claim 17, wherein the first indication isquantized with B₁ bits and the second indication is quantized with B₂bits where B₂≦B₁.
 25. A user equipment used in a wireless communicationssystem, the user equipment comprising: a receiving unit to receive, froma base station, data precoded with a precoder, wherein the precoder canbe expressed as multiplication OV where O is multiplied by V in theorder of OV in a non-commutative manner, V is a first matrixcorresponding to a first indication of the precoder for a group oftransmitted symbols and O is a second matrix corresponding to a secondindication of the precoder for a variation in a channel.
 26. The userequipment as in claim 25, further comprising: a transmission unit totransmit to the base station the first indication of the precoder andthe second indication of the precoder.
 27. The user equipment as inclaim 25, wherein the variation is in at least one of time, frequency,and OFDM tones.
 28. The user equipment as in claim 25, wherein thechannel is correlated in at least one of time and frequency.
 29. Theuser equipment as in claim 25, wherein the group of transmitted symbolsare transmitted in a chunk of adjacent OFDM tones.
 30. The userequipment as in claim 25, wherein matrix O is a differential precoder.31. The user equipment as in claim 25, wherein matrix O is a unitarymatrix.
 32. The user equipment as in claim 25, wherein the firstindication is quantized with B₁ bits and the second indication isquantized with B₂ bits where B₂≦B₁.
 33. A method implemented in awireless communications system, the method comprising: precoding datawith a precoder; and transmitting the precoded data from a base stationto a user equipment, wherein the precoder can be expressed asmultiplication OV where O is multiplied by V in the order of OV in anon-commutative manner, V is a first matrix corresponding to a firstindication of the precoder for a group of transmitted symbols, and O isa second matrix corresponding to a second indication of the precoder fora variation in a channel.
 34. A wireless communications systemcomprising: a base station to precode data with a precoder; and a userequipment to receive the precoded data from the base station, whereinthe precoder can be expressed as multiplication OV where O is multipliedby V in the order of OV in a non-commutative manner, V is a first matrixcorresponding to a first indication of the precoder for a group oftransmitted symbols, and O is a second matrix corresponding to a secondindication of the precoder for a variation in a channel.